package com.shigu.activity.api;

import com.shigu.PageResponse;
import com.shigu.activity.vo.ActivityGoodsListVo;
import com.shigu.activity.vo.LimitGoodsListVo;
import com.shigu.exceptions.AdminException;
import com.shigu.exceptions.WapException;

/**
 * @author      沐风
 * @Descirption 活动商品服务
 * @date        2019/8/30 5:24 PM
 */
public interface ActivityGoodsService {

    //wapsjson
    /**
     * @author      沐风
     * @Descirption 获取活动商品
     * @date 2019/8/30 5:24 PM
     */
    ActivityGoodsListVo getActivityGoodsList(Long aId,Long userId,Integer page,Integer size,String version,String os) throws WapException;

    //adminjson
    /**
     * @author      沐风
     * @Descirption 设置限时商品
     * @param goodsCode 商品编号
     * @param num   商品数量
     * @param weight 权重
     * @date        2019/8/31 12:51 PM
     */
    void setLimitGoods(Long goodsCode,Integer num,Integer weight) throws AdminException;

    /**
     * @author      沐风
     * @Descirption 修改限时商品
     * @param goodsCode 商品编号
     * @param num   商品数量
     * @param weight 权重
     * @date        2019/8/31 12:54 PM
     */
    void modifyLimitGoods(Long goodsCode,Integer num,Integer weight) throws AdminException;

    /**
     * @author      沐风
     * @Descirption 删除限时商品
     * @param goodsCode 商品编号
     * @date        2019/8/31 12:54 PM
     */
    void deleteLimitGoods(Long goodsCode) throws AdminException;

    /**
     * @author      沐风
     * @Descirption 获取限时商品数据
     * @date        2019/8/31 1:20 PM
     */
    PageResponse<LimitGoodsListVo> getLimitGoodsList();
}
